var express = require("express");
var router = express.Router();
const user = require("../sql/user");
const registerpassword = require("../sql/registerpassword");
// 注册的第一步   命中/register的时候 要渲染注册页面 
router.get('/', function (req, res, next) {
    console.log('进来了注册的第一步')
    res.render('register')
})

// 注册的第二步调用数据库  <form action="/register/in" method="post">
router.post('/in', function (req, res, next) {


    console.log('进来了注册的第2步')
    var obj = req.body
    console.log(obj)

    // 1 这是玩具的理解的邀请码 企业级的是要进数据库


    // var  flag = yaoqingma.includes(req.body.yaoqingma); // true

    // [1, 2, 3].includes(4); // false


    //  2  企业级的邀请码功能  要求 用户注册之后 相对应的邀请码就消失 
    // const registerpassword = require("../sql/registerpassword");
    // 一  我们现在已经做好了邀请码 并且把 app.use('/addregisterpassword', registerpassword);注销了 
    // 二  第一步咱们要进行校验  
    // registerpassword.findOne({code:obj.code}  看看有没有邀请码
    // if (req.username & req.password & req.yaoqingma)  {
    //     // 开始搜索查询数据库req.yaoqingma 数据库里面是否拥有 
    //     // 如果拥有把req.username req.password写进去
    //     // 写进去之后再把当前的req.yaoqingma删除 
    // } else {

    // }

    // 要求独立完成   不要抄答案  

    console.log('进来数据填全的这里了11111')
    console.log(obj.username)
    console.log(obj.password)
    console.log(obj.yaoqingma)
    if (obj.username && obj.password && obj.yaoqingma) {
        console.log('进来数据填全的这里了2222')
        // 1 查询以下邀请码是否合格  
        registerpassword.findOne({ code: obj.yaoqingma }, (err, data) => {

            console.log('registerpassword.findOne')
            if (err) {
                console.log('err')
            }
            console.log(data)
              // 2 邀请码合格 
            if (data) {
                console.log('已经有了这个邀请码')
                // 3邀请码合格  插入user   obj此时有三个数据username password yaoqingma 但是
                // userSchema锁死了数据的格式 所以进去只有username password 
                user.insertMany(obj,(err,data)=>{
                    if(err) {
                        console.log('err')
                        return 
                    }
                    console.log('注册成功')
                    // 4 注册成功后 删除此邀请码就不能用了 
                    
                    registerpassword.deleteOne({ code: obj.yaoqingma },(err,data)=>{
                        if(err) {
                            console.log('删除失败')
                        }
                         console.log('删除成功邀请码')
                    })
                    console.log(data)
                    res.redirect('/login')
                })
                return
            } else {
                console.log('别乱来邀请码')
            }
        })
    } else {
        console.log('请填写全数据')
        return
    }





















    // 普通用户注册


    // user.findOne({username:obj.username},(err,data)=>{


    //     if(err) {
    //         console.log('err')
    //     }
    //     if(data) {
    //         res.render('register2')
    //     }else {
    //         user.insertMany(obj,(err,data)=>{
    //             if(err) {
    //                 console.log('err')
    //             }
    //             console.log(data)
    //             res.redirect('/login')
    //         })
    //     }
    // })
})



module.exports = router;